package com.jl15988.simpletools.system.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jl15988.simpletools.system.domain.entity.OperationLog;

/**
 * 操作日志服务接口
 *
 * @author jl15988
 */
public interface OperationLogService extends IService<OperationLog> {

    /**
     * 记录操作日志
     *
     * @param userId        用户ID
     * @param operationType 操作类型
     * @param targetId      目标ID
     * @param detail        详情
     * @return 是否成功
     */
    boolean addLog(Long userId, String operationType, Long targetId, String detail);

    /**
     * 分页查询操作日志
     *
     * @param page          页码
     * @param size          每页大小
     * @param userId        用户ID
     * @param operationType 操作类型
     * @param startTime     开始时间
     * @param endTime       结束时间
     * @return 分页结果
     */
    IPage<OperationLog> getLogPage(int page, int size, Long userId, String operationType, String startTime, String endTime);
} 